<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>title</title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <link rel="stylesheet" href="/lib/layui-v2.6.3/css/layui.css" media="all">
    <link rel="stylesheet" href="/css/public.css" media="all">
</head>
<body>
<div class="layuimini-container" id="app">
    <div class="layuimini-main">
        <fieldset class="table-search-fieldset">
            <legend>活动排期表</legend>
            <div style="margin: 10px 10px 10px 10px">
                <form class="layui-form layui-form-pane" action="" lay-filter="table-search">
                    <div class="layui-form-item">
                        <div class="layui-inline">
                            <label class="layui-form-label">分组名称</label>
                            <div class="layui-input-inline">
                                <input type="text" name="name" autocomplete="off" class="layui-input">
                            </div>
                        </div>
                        <div class="layui-inline">
                            <button type="submit" class="layui-btn layui-btn-primary"  lay-submit
                                    lay-filter="data-search-btn"><i class="layui-icon"></i> 搜 索</button>
                        </div>
                        <div class="layui-inline">
                            <button type="button" class="layui-btn" id="activelistqd" title="H-活动排期表.xlsx">
                                <i class="layui-icon layui-icon-upload"></i> H-活动排期表(渠道版)
                            </button>
                        </div>
                        <div class="layui-inline">
                            <button type="submit" class="layui-btn layui-btn-primary"  lay-submit
                                    lay-filter="data-send-btn"><i class="layui-icon"></i>  导 出</button>
                        </div>
                    </div>

                </form>
                <div class="layui-inline">
                    <button type="submit" class="layui-btn layui-btn-primary"  lay-submit
                            lay-filter="data-send-btn"><i class="layui-icon"></i> 发 布</button>
                </div>

            </div>
        </fieldset>

        <script type="text/html" id="toolbarDemo">
            <button class="layui-btn layui-btn-sm layui-btn-normal" lay-event="add" auth="activeRule:add">新增</button>

        </script>
        <table class="layui-hide" id="currentTableId" lay-filter="currentTableFilter"></table>
        <script type="text/html" id="currentTableBar">
            <a class="layui-btn layui-btn-xs layui-btn-danger data-count-update" lay-event="update" auth="activeRule:update">edit</a>

        </script>
    </div>
</div>
<script src="/lib/layui-v2.6.3/layui.js" charset="utf-8"></script>
<script src="/js/common.js?v=5" charset="utf-8"></script>

<script>
    var activeatrr = getEnum('activeatrr')
    var activeatrrMap = {};
    activeatrr.forEach(function(item) {
        activeatrrMap[item.id] = item.name;
    })
    var serverGroup = getEnum('serverGroup')
    var serverGroupMap = {};
    serverGroup.forEach(function(item) {
        serverGroupMap[item.group_id.toString()] = item.group_name; // 确保使用字符串作为键
    });

    var services = JSON.parse(localStorage.getItem('services'))
    var servicesMap = {};
    services.forEach(function(item) {
        servicesMap[item.server_id] = item.name;
    });

    new Vue({
        el: "#app",
        data: {
            versionNow: '',
            hostVersion: '1',
            hostVersionAndriod: '2',
            hostVersionIos: '3',
            versionEventGlobalText: '',
            versionEventList: [],
        },
        created(){
            _this = this
        },
        methods: {

            versionChange(e,name){
                console.log("11",name)
                var val = e.target.value;
                $.post('/admin/setting/setByName',{_method:"put",name:name,val:val},function(res){
                    if (res.code===0){
                        layer.msg('success',{icon:1})
                    }
                })
            }
        },
        mounted() {
            var _this = this;


            layui.use(['form', 'table'], function () {
                var upload = layui.upload;
                $ = layui.jquery,
                    form = layui.form,
                    table = layui.table;
                table.render({
                    elem: '#currentTableId',
                    url: '/admin/activeRuleqd/paginate',
                    toolbar: '#toolbarDemo',
                    defaultToolbar: ['filter', 'print'],
                    css: [ // 重设当前表格样式
                        '.layui-table-tool-temp{padding-right: 145px;}'
                    ].join(''),
                    cellMinWidth: 80,

                    cols: [[
                        {field: 'num', title: '编号',width:100, sort: true, fixed: 'left'},
                        {field: 'name', title: '活动名称',width:100, fixed: 'left'},
                        {
                            field: 'TypeId',
                            title: '规则表id',
                            width: 100,
                            fixed: 'left'
                        },
                        {field: 'rmark', title: '备注说明',width:100},
                        {
                            field: 'serverGroup', // 假设你的数据中有这个字段
                            title: '服务器分组',
                            width: 100,
                            templet: function(row) {
                                return serverGroupMap[row.serverGroup] || '未知'; // 查找对应名称
                            }
                        },
                        {field: 'ServerType', width: 100 , title: '活动类型',templet:function (row) {
                                switch(row.ServerType){
                                    case "1": return '全服';
                                    case "3": return '单服';
                                }
                            }},
                        {
                            field: 'ServerList',
                            title: '服列表',
                            width: 120,
                            templet: function(row) {
                                if (!row.ServerList) {
                                    return ''; // 或者返回其他合适的默认值
                                }

                                var serverIds = row.ServerList.split('*').map(function(id) {
                                    return id.trim(); // 去除可能的空格
                                });

                                return serverIds.map(function(id) {
                                    return servicesMap[id] || '未知'; // 查找对应名称
                                }).join('*'); // 以逗号分隔
                            }
                        },

                        {field: 'TimeType', width: 100 , title: '时间类型',templet:function (row) {
                                switch(row.TimeType){
                                    case "1": return '开服时间(秒)';
                                    case "2": return '自然时间';
                                    case "3": return '创角时间(秒)';
                                    case "4": return '合服时间(秒)';
                                    case "5": return '每周时间';

                                }
                            }},
                        {field: 'TimeOpen', title: '开启时间', width:180},
                        {field: 'TimeEnd', title: '结束时间', width:180},
                        {field: 'LoopType', width: 100 , title: '轮转设置',templet:function (row) {
                                switch(row.LoopType){
                                    case "0": return '不循环';
                                    case "1": return '日循环';
                                    case "2": return '周循环';
                                    case "3": return '月循环';

                                }
                            }},
                        {field: 'LoopVal', title: '循环周期',width:100},
                        {field: 'LoopDayTimeLimitStart', title: '每日开启时间', width:120},
                        {field: 'LoopDayTimeLimitEnd', title: '每日结束时间', width:120},
                        {field: 'DayRefreshTime', title: '重置时间', width:120},
                        {field: 'UIInFuncId', width: 100 , title: '上级UI',templet:function (row) {
                                switch(row.UIInFuncId){
                                    case "0": return '活动界面';
                                    case "1": return '兑换界面';
                                    case "1001": return '七日签到';
                                    case "99999": return '不显示';

                                }
                            }},
                        {field: 'UIInFuncIdParam', title: '弹出提示(秒)',width:100},
                        {field: 'IsSysMsg', title: '是否播报',width:100},
                        {field: 'IsSysMsg', width: 100 , title: '是否播报',templet:function (row) {
                                switch(row.IsSysMsg){
                                    case "0": return '播报';
                                    case "1": return '不播报';
                                }
                            }},
                        {field: 'Rebirth', width: 100 , title: '转生要求',templet:function (row) {
                                switch(row.Rebirth){
                                    case "0": return '转生';
                                    case "1": return '不转生';
                                }
                            }},
                        {field: 'ExclusionAction', title: '互斥活动',width:100},
                        {field: 'AdvanceDisplay', title: '提前显示时间',width:100},
                        {field: 'ContinuousDisplay', title: '持续显示时间',width:100},

                        {title: '操作', toolbar: '#currentTableBar', align: "center",width:80 , fixed: 'right'}
                    ]],
                    limits: [10, 15, 20, 25, 50, 100],
                    limit: 15,
                    page: true,
                    skin: 'grid',
                    border: true ,// 开启边框
                    // 允许横向滚动
                    scrollX: true
                });



                var excelMime = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";


                upload.render({ //活动排期表
                    elem: '#activelistqd',
                    data:{table:'activelistqd',name:$('#activelistqd').attr('title')},
                    exts:"xlsx",
                    acceptMime:excelMime,
                    trigger: 'click', //绑定点击事件
                    url:"/admin/excel/import",
                    done:function(res){
                        if (res.code !==0 ){
                            layer.msg(res.msg,{icon:2})
                        } else {
                            layer.msg('导入成功',{icon:1})
                        }
                    }
                });

                // 监听搜索操作
                form.on('submit(data-search-btn)', function (data) {

                    var searchData = data.field;
                    //执行搜索重载
                    table.reload('currentTableId', {
                        page: {
                            curr: 1
                        }
                        , where: searchData
                    }, 'data');
                    return false;
                });


                // 监听搜索操作
                form.on('submit(data-send-btn)', function (data) {
                    var pushPop = layer.confirm('确定要推送吗?', {icon: 3, title: "提示"}, function () {
                        $.post('/admin/activeRuleqd/push', null, function (res) {
                            if (res.code === 0) {
                                layer.msg('推送成功', {icon: 1, time: 500}, function () {
                                    table.reload('currentTableId');
                                })
                                table.reload()
                                layer.close(pushPop)
                            } else {
                                layer.msg(res.msg, {icon: 2})
                            }
                        });

                        return false;
                    });
                })

                /**
                 * toolbar监听事件
                 */
                table.on('toolbar(currentTableFilter)',function (obj) {

                    if (obj.event === 'add') {  // 监听添加操作
                        var index = layer.open({
                            title: '添加',
                            type: 2,
                            shade: 0.2,
                            maxmin: true,
                            shadeClose: true,
                            area: ['80%', '80%'],
                            content: 'add.html',
                        });
                    }
                });
                //上传文件
                table.on('tool(currentTableFilter)', function (obj) {

                });

                table.on('tool(currentTableFilter)', function (obj) {
                    var data = obj.data;



                    if (obj.event === 'update') {
                        var index = layer.open({
                            title: '编辑',
                            type: 2,
                            shade: 0.2,
                            maxmin: true,
                            shadeClose: true,
                            area: ['80%', '80%'],
                            content: 'add.html?id=' + obj.data.id,
                        });
                        return false;
                    } else if (obj.event === 'delete') {
                        var delPop = layer.confirm('确定要删除吗?', {icon: 3, title: "提示"}, function () {
                            $.post('/admin/cient/' + obj.data.id, {_method: 'delete'}, function (res) {
                                if (res.code === 0) {
                                    layer.msg('删除成功', {icon: 1, time: 500}, function () {
                                        table.reload('currentTableId');
                                    })
                                    table.reload()
                                    layer.close(delPop)
                                } else {
                                    layer.msg(res.msg, {icon: 2})
                                }
                            });
                        })

                    }
                    else   if (obj.event==='upload'){
                        var index = layer.open({
                            title: '编辑',
                            type: 2,
                            shade: 0.2,
                            maxmin: true,
                            shadeClose: true,
                            area: ['80%', '80%'],
                            content: 'upload.html?id=' + obj.data.id,
                        });
                        return false;
                    }
                    else   if (obj.event==='uploadInfo'){
                        var index = layer.open({
                            title: '上传文件查询',
                            type: 2,
                            shade: 0.2,
                            maxmin: true,
                            shadeClose: true,
                            area: ['80%', '80%'],
                            content: 'uploadInfo.html?id=' + obj.data.id,
                        });
                        return false;
                    }
                });
            });
        }
    })
</script>
</body>
</html>